<template>
  <view class="user-agreement-container">
    <view class="header">
      <text class="title">用户协议</text>
      <text class="update-date">更新日期：2025年9月1日</text>
    </view>

    <view class="content">
      <view class="section">
        <text class="section-title">1. 协议接受</text>
        <text class="section-content">
          欢迎使用BrainCube智能测试平台！本协议是您与我们之间关于使用本服务的法律协议。通过访问或使用我们的服务，您表示同意受本协议条款的约束。
        </text>
      </view>
			
      <view class="section">
        <text class="section-title">2. 服务描述</text>
        <text class="section-content">
          BrainCube是一个智能测试平台，提供以下服务：\n• 认知能力测试（反应时间、记忆力、注意力等）\n• 个人能力分析和报告\n• 排行榜和社交功能\n• 训练和提升建议\n• 数据统计和历史记录
        </text>
      </view>
			
      <view class="section">
        <text class="section-title">3. 用户责任</text>
        <text class="section-content">
          使用我们的服务时，您同意：\n• 提供真实、准确的个人信息\n• 不进行任何违法或有害的活动\n• 不干扰或破坏服务的正常运行\n• 不侵犯他人的权利或隐私\n• 遵守所有适用的法律法规\n• 保护您的账户安全
        </text>
      </view>
			
      <view class="section">
        <text class="section-title">4. 禁止行为</text>
        <text class="section-content">
          以下行为是被禁止的：\n• 使用自动化工具或机器人进行测试\n• 故意提交虚假或误导性的测试结果\n• 尝试破解、逆向工程或反编译我们的软件\n• 传播恶意软件或病毒\n• 骚扰、威胁或侮辱其他用户\n• 侵犯知识产权
        </text>
      </view>
			
      <view class="section">
        <text class="section-title">5. 知识产权</text>
        <text class="section-content">
          我们的服务及其所有内容（包括但不限于）：\n• 软件代码和算法\n• 测试题目和评估方法\n• 界面设计和用户体验\n• 商标、标识和品牌元素\n均受知识产权法保护，归我们所有。
        </text>
      </view>
			
      <view class="section">
        <text class="section-title">6. 数据使用权</text>
        <text class="section-content">
          您同意我们可以：\n• 收集和分析您的测试数据\n• 使用匿名化数据改进我们的服务\n• 为您提供个性化的建议和内容\n• 生成统计报告和研究分析\n我们承诺保护您的隐私，详见我们的隐私政策。
        </text>
      </view>
			
      <view class="section">
        <text class="section-title">7. 服务变更和终止</text>
        <text class="section-content">
          我们保留以下权利：\n• 随时修改、暂停或终止服务\n• 更新应用功能和界面\n• 调整服务条款和政策\n• 限制或终止违规用户的访问权限\n重大变更将提前通知用户。
        </text>
      </view>
			
      <view class="section">
        <text class="section-title">8. 免责声明</text>
        <text class="section-content">
          我们的服务按"现状"提供，我们不保证：\n• 服务的连续性和可用性\n• 测试结果的绝对准确性\n• 服务完全无错误或无中断\n• 满足您的特定需求\n测试结果仅供参考，不应作为医疗或专业诊断依据。
        </text>
      </view>
			
      <view class="section">
        <text class="section-title">9. 责任限制</text>
        <text class="section-content">
          在法律允许的最大范围内，我们不对以下情况承担责任：\n• 因使用或无法使用服务造成的损失\n• 数据丢失或损坏\n• 第三方的行为或内容\n• 不可抗力事件\n我们的总责任不超过您支付的服务费用。
        </text>
      </view>
			
      <view class="section">
        <text class="section-title">10. 争议解决</text>
        <text class="section-content">
          因本协议产生的争议，双方应首先通过友好协商解决。协商不成的，提交至我们所在地有管辖权的人民法院解决。
        </text>
      </view>
			
      <view class="section">
        <text class="section-title">11. 其他条款</text>
        <text class="section-content">
          • 本协议构成双方就相关事宜的完整协议\n• 如协议某条款无效，不影响其他条款的效力\n• 我们未行使权利不构成对该权利的放弃\n• 本协议适用中华人民共和国法律
        </text>
      </view>
			
      <view class="section">
        <text class="section-title">12. 联系方式</text>
        <text class="section-content">
          如有疑问或建议，请联系我们：\n• 邮箱：support@braincube.com\n• 客服热线：400-123-4567\n• 工作时间：周一至周五 9:00-18:00\n• 公司地址：北京市朝阳区科技园区123号
        </text>
      </view>
    </view>
		
    <view class="footer">
      <BrandButton
          text="我已阅读并同意"
          type="primary"
          size="large"
          @click="handleAgree"
      ></BrandButton>
    </view>
  </view>
</template>

<script setup>
import BrandButton from '@/components/BrandButton.vue'
import { setUserAgreementAgreed, updateAgreementVersion } from '@/utils/agreementManager.js'

// 处理同意协议
const handleAgree = () => {
	// 使用协议管理工具记录同意状态
	setUserAgreementAgreed(true)
	// 更新协议版本
	updateAgreementVersion('1.0.0')
	
	uni.showToast({
		title: '已确认用户协议',
		icon: 'success'
	})
	
	// 返回上一页
	setTimeout(() => {
		uni.navigateBack()
	}, 1500)
}
</script>

<style lang="scss" scoped>

.user-agreement-container {
	display: flex;
	flex-direction: column;
	height: 100vh;
	background-color: $bg-primary;
}

.header {
	padding: 40rpx 40rpx 20rpx 40rpx;
	background: linear-gradient(135deg, $brand-secondary 0%, $brand-secondary-dark 100%);
	color: white;
	
	.title {
		display: block;
		font-size: 36rpx;
		font-weight: 700;
		margin-bottom: 10rpx;
	}
	
	.update-date {
		display: block;
		font-size: 24rpx;
		opacity: 0.8;
	}
}

.content {
	flex: 1;
	padding: 40rpx;
	
	.section {
		margin-bottom: 40rpx;
		
		.section-title {
			display: block;
			font-size: 32rpx;
			font-weight: 600;
			color: $brand-secondary-dark;
			margin-bottom: 20rpx;
			padding-bottom: 10rpx;
			border-bottom: 2rpx solid $border-light;
		}
		
		.section-content {
			display: block;
			font-size: 28rpx;
			color: $text-primary;
			line-height: 1.6;
			white-space: pre-line;
		}
	}
}

.footer {
	padding: 30rpx 40rpx;
	background-color: white;
	border-top: 1rpx solid $border-light;
	box-shadow: 0 -4rpx 20rpx rgba(0, 0, 0, 0.1);
}
</style>